﻿// Decompiled with JetBrains decompiler
// Type: DnProcessSimulateCommands.CApCableScopeStatus
// Assembly: DnProcessSimulateCommands, Version=2402.0.0.890, Culture=neutral, PublicKeyToken=null
// MVID: A885D881-AEDF-447E-852A-6F13102E089C
// Assembly location: C:\Program Files\Tecnomatix_2402\eMPower\DotNetCommands\DnProcessSimulateCommands.dll

using Tecnomatix.Engineering;


namespace DnProcessSimulateCommands;

public class CApCableScopeStatus
{
  public CApCableScopeStatus()
  {
    this.Cable = (ITxCable) null;
    this.ParentEquipment = (ITxObject) null;
  }

  public ITxCable Cable { get; set; }

  public ITxObject ParentEquipment { get; set; }

  public bool IsCableInEquipment => this.ParentEquipment != null;

  public bool IsCableOpenForModeling
  {
    get
    {
      bool cableOpenForModeling = true;
      if (this.Cable != null)
        cableOpenForModeling = CApCableUtility.IsObjectOpenForModeling((ITxObject) this.Cable);
      return cableOpenForModeling;
    }
  }

  public CApCableScopeStatus.ECableEquipmentModelingScope CableEquipmentModelingStatus
  {
    get
    {
      CApCableScopeStatus.ECableEquipmentModelingScope equipmentModelingScope = CApCableScopeStatus.ECableEquipmentModelingScope.NotApplicable;
      return this.ParentEquipment != null ? (CApCableUtility.IsObjectOpenForModeling(this.ParentEquipment) ? CApCableScopeStatus.ECableEquipmentModelingScope.OpenForModeling : CApCableScopeStatus.ECableEquipmentModelingScope.NotOpenForModeling) : equipmentModelingScope;
    }
  }

  public enum ECableEquipmentModelingScope
  {
    NotApplicable,
    OpenForModeling,
    NotOpenForModeling,
  }
}
